// Instrucțiune compusă pentru desenarea rămurelelor

void DrawBranches(int lungime, int unghi)
{
	Esy.LT(unghi);
	Esy.FD(lungime);
	Esy.BK(lungime);
	Esy.RT(unghi);
	Esy.RT(unghi);
	Esy.FD(lungime);
	Esy.BK(lungime);
	Esy.LT(unghi);
} // end DrawBranches

// Instrucțiune compusă pentru desenarea unui copac
void DrawTree(int tulpina, int unghi)
{
	var ramura = tulpina / 2;
	var ramurica = ramura / 2;
	// Tulpina:
	Esy.FD(tulpina);

	// Ramura stângă:
	Esy.LT(unghi);
	Esy.FD(ramura);

	// Rămurelele din stânga:
	DrawBranches(ramurica, unghi);

	// Turtle se întoarce la baza ramurilor:
	Esy.BK(ramura);
	Esy.RT(unghi);

	// Ramura dreaptă:
	Esy.RT(unghi);
	Esy.FD(ramura);

	// Rămurelele din dreapta:
	DrawBranches(ramurica, unghi);

	// Turtle se întoarce la baza ramurilor:
	Esy.BK(ramura);
	Esy.LT(unghi);

	// Turtle se întoarce în punctul de pornire:
	Esy.BK(tulpina);
} // end DrawTree

DrawTree(100, 30);